Method for creating a virtual private network through a public network

ABSTRACT

The aim of this invention involves exchanging data between several computers or multimedia units through a public network guaranteeing at the same time the confidentiality of these data.  
     This aim is achieved by a creation and use method of a virtual private network (VPN) which has a plurality of units connected to a public network, each unit having security means which has a unique number UA 1,  this method is characterized by the following steps:  
     to generate a right Dn associated to the unique number UAn, by the security means of a unit Un,  
     to transfer this right Dn to the security means of at least one unit Um,  
     to encrypt the data sent by unit Un and the description of the Dn right by a encryption data key KS,  
     to receive the data encrypted by the second unit Um, present these data to the security means of the unit Um, verify if the Dn right is present and if this is the case, decrypt the data by the encryption data key KS.

[0001] The present invention refers to the domain of the telecommunication networks, in particular the creation of a private network inside a public network.

[0002] These networks are known under the name “Virtual Private Network” (VPN).

[0003] It is known that security connection will be established between two points across a public network using an exchange protocol of keys for the creation of a security connection. Such a protocol is described as SSL which is based on the data exchange thanks to a pair of keys, the public key and the private key for the definition of a symmetrical session encryption key. The data is codified by this session key, the latter being used only for this transaction.

[0004] This function can only be developed between two interlocutors and thus cannot allow the formation of a network for several users. In fact, it is necessary to have the same quantity of unities of dialogue as computers to connect.

[0005] The need to create such networks is present when one wishes to link several distant points but connected to a same public network such as Internet.

[0006] This need goes together with effective protection of the exchanged data because when one connects on the Internet, confidentiality is not guaranteed.

[0007] In this way an unsolved problem remains which consists of linking several computers or multimedia units through a public network at the same time guaranteeing the confidentiality of that data.

[0008] This aim is reached by a method for creating and using a virtual private network (VPN) which has a plurality of units connected to a public network, each unit having security means which have a unique number UA, this method is characterized by the following steps:

[0009] to generate a right Dn associated to the unique number UAn, by the security means of a unit Un,

[0010] to transfer this right Dn to the security means of at least one unit Um,

[0011] to encrypt the data sent by unit Un and the description of the Dn right by a encryption data key KS,

[0012] to receive the data encrypted by the second unit Um, present these data to the security means of the unit Um, verify if the Dn right is present and if this is the case, decrypt the data by the encryption data key KS.

[0013] When unit U2 wants to communicate with unit U1, it carries out the same operation using the right D1 as an identifier and unit U1 can receive the data because it contains this right.

[0014] When unit U1 sends its right D1 to a third unit U3, the same principle applies between unit U1 and U3 but also between unit U2 and unit U3. They use the right D1 initiated by unit U1 to authorize decryption of the data.

[0015] Thus, we can see that a spontaneous network has been created whose administrator is unit U1, that which has created the first right.

[0016] We can divide the units into two categories, either the generating units such as unit U1 or the participating units such as U2 and U3.

[0017] It should be noted that if unit U2 wants to communicate with unit U1 without allowing unit U3 to decrypt the data, unit U2 also becomes a generating unit and sends a D2 right to unit U1. A second virtual network has been created between units U1 and U2.

[0018] Practically, these security means can present themselves in several forms. To assure high security in the mechanism of encryption/decryption, specialized microprocessors which contain encryption engine and data such as the security keys are used.

[0019] These microprocessors are supplied in the form of a microchip card with a Plug-in SIM or ISO 7816-2 format.

[0020] According to a first embodiment of the invention, the network card of the units contains the aforementioned microchip card, for example in the same way as a GSM phone. The data are directly processed on the network card and the work is done in a transparent way.

[0021] The user of unit U2, at the moment of data issue, will only have to select the network through which the encryption must be done. In fact, it is possible that unit U2 is part of several networks (for example U1 and U3) and so a selection must be made.

[0022] The sending of the right D1 to another unit is an operation which requires great care. In fact, it is necessary to be sure that this right is only loaded in the units desired by U1. Because of this, there are several solutions:

[0023] unit U1 gains access to the public key of unit U2 to decrypt the right D1 and send it to unit U2. This right can only be decrypted by U2 thanks to its private key. The other units, which do not possess the private key of unit U2, cannot decrypt the right D1.

[0024] the initialisation protocol in the security means requires the introduction of a password. Unit U1, at the moment of the generation of the right D1, asks the user to introduce a password which is associated to the right under an encrypted form. This right D1 is sent to unit U2, and when the user of U2 wants to load this right in the security means, the latter requests the introduction of the password. Thanks to the secret key contained in all the security modules, the password is controlled with that contained in right D1 and the right is only loaded if the passwords are identical. The password is transmitted between U1 and U2 by other means for example by phone. A variant of this solution consists in sending the right D1 mixed with a large number of filling data. The password is then used as an addressing key to extract the right D1 inside these superfluous data.

[0025] a simple and effective means is to load the right D1 on a removable base such as a floppy disk and send it to U2.

[0026] the host apparatus of the security means disposes of a second location in which it is possible to place a second security means. The transfer is made from one means to another in a very restricted environment.

[0027] In order to prevent the right D1 from being loaded in other units than U2, it is possible to generate the right D1 and to associate it to the unique number of U2 (that is UA2). The right D1 is therefore associated with the unique number UA2 (for unit U2) and sent to this unit. If other security means (Un) attempt to load this right (with the password for example), a verification is done in order to control if the unique number UAn corresponds to that number associated to the right D1.

[0028] The keys used during the different transactions play an important role. For key encryption of those data, several variants can be used. According to a first embodiment, the security means comprise a secret key which is common to all the security means. This key can be of an asymmetrical (RSA) or symmetrical type (DES, CAST, IDEA).

[0029] According to a second variant, the security means of unit U1 generate a key of encryption/decryption K1, which is encrypted by the service key K0 and sent with the right D1 according to the above mentioned modalities. In this way, there will be as many different keys as the virtual network. A unit which participates with three networks is therefore going to store three different encryption keys.

[0030] In a more elaborated form of the invention, it is possible that unit U1 wishes to transmit data with U3, without U2, also part of its network, being able to read this information.

[0031] This is why, when U1 generates the right D1, a network index is added. This index may be kept on some bits if one wishes to limit the number of networks created by U1 to 256 for example. On the side of unit U2, if it participates in several networks initiated by U1, it will not duplicate the right D1 but just the index of the network.

[0032] After the transmission phase of this right to unit U2, the security means proceed to the verification of the right and the index. It is important to remember that those data are stored in a crypto-processor and cannot be modified by the user.

[0033] In this way it will be much easier for unit U1 to manage the different networks created.

[0034] This invention also extends to a centralized management system of rights. All the units are linked (or can be at a given moment) to a managing centre. When a unit requires the creation of a network R1, it sends this request to the managing centre.

[0035] The latter verifies if the unit is authorized to do this operation and in an affirmative case, it will send the right D1 to unit U1 as well as a key K1 common to the network R1.

[0036] When unit U2 wishes to participate in this network, unit U1 transmits the right D1 or a part of this right to unit U2 according to the modalities already mentioned above. With this right, unit U2 can apply to the managing centre in order to receive the key K1 and the right D1 as a whole.

[0037] If reference is made here to a part of the right D1 which is transferred from unit U1 to unit U2, this comes from the fact that the right D1 is transmitted totally to unit U2 by the managing centre. One can imagine that when the network R1 is created, unit U1 attributes a password to it. This password, representative of right D1 is transmitted to unit U2 which presents it to the managing centre itself.

[0038] The centre verifies the password and if it is correct, the right D1 is transmitted to unit U2.

[0039] The interest of using a managing centre is the dynamic management of such a network. In fact, the problem of radiation of part of a network can occur at any time. Furthermore, a high security level involves the frequent change of the encryption keys.

[0040] These functions are available through the managing centre which can coordinate a change of key for a given network. The new key is transmitted to all the units of this network thanks to the protected connection which links all the units to the managing centre. This kind of data is transmitted encrypted with addressee the unique number of each unit. Thus, it is possible to withdraw a part of the group by stopping transmitting the updated keys. The centre can radiate a part by sending a deactivation order of the right.

[0041] The invention will be understood better thanks to the following detailed description which refers to annexed drawings which are given as a non limitative example, i.e.:

[0042]FIG. 1 describes a network without managing centre at a unique level

[0043]FIG. 2 describes a network without managing centre at several levels,

[0044]FIG. 3 describes a network with managing centre.

[0045]FIG. 1 illustrates 5 identified units UN1 to UN5. Each unit contains security means in which there is a crypto-processor in charge of generation and management of the rights.

[0046] According to our example, unit UN1 generates the D1 right that it sends to units UN2 and UN4.

[0047] In parallel, unit UN5 generates a right D5 that it sends to units UN2 and UN3.

[0048] We have a first network formed by units UN1, UN2 and UN4 as well as a second network formed by units UN2, UN3 and UN5. Unit UN2 must select the network it wishes to work on because it disposes of both rights. When data are exchanged between these different units, there are two ways of operating. According to a first embodiment, the secret key contained in the security means (or that generated with the right) is used to encrypt all the transferred contents between the different units. Another way consists of using a session key.

[0049] This random session key KS is generated by the transmitting unit, and is used to encrypt the data. For operational reasons of quickness, this key is a symmetrical type. The transmitting unit has a control data block that consists of the session key KS and the definition of the right necessary for the decryption of the data. This block is encrypted by a common service key to the units, or by the key generated with the right D.

[0050] At the time of reception, the control block is treated by the security means before the treatment of the data. These means will therefore decrypt the control block and verify if the required right is present in this unit. In an affirmative case, the session key KS is applied to the data that allows them to be decrypted.

[0051]FIG. 2 illustrates a variant in which unit UN1 has generated two rights to create two networks, D1 a and D1 b. A first network is created between the units UN1, UN2 and UN3 while a second network is created between units UN1, UN4 and UN5.

[0052] This variant permits great flexibility in confidential data diffusion choosing that which can encrypt the data. In fact, as the transmission network is a public one, it can be considered that the data are accessible to all the units that have the right when the connection is done from one unit to the other.

[0053]FIG. 3 represents the variant with a managing centre MC. Unit UN1 requires the right D1 from the MC centre as well as from the encryption key k1. The centre records the creation of the network R1 in its database. To participate in this network, unit UN2 must also receive this right D1. Because of this, the method used can be the one described above or it can receive support from the managing centre. In fact, according to a particular protocol, unit UN1 can communicate the direction of the units with which it wishes to create the R1 network. The managing centre MC, thanks to the secured telecommunications means that it includes, will transfer the right D1 to all the concerned units as well as the encryption/decryption key k1. In a similar way, if unit UN3 wishes to create a network R3, it asks the managing centre to assign it the network R3 associated to the right D3.

[0054] Knowledge of all the units participating in a given network is important for the regular change of the encryption keys. The centre MC can change the keys in the units at regular intervals (or pseudo-random) to avoid using the same key too long and therefore making it vulnerable.

[0055] The change of key is also useful to eliminate part of the network participants. The generating unit UN1 informs the managing centre MC that the unit UNn is no longer part of the network D1 and the centre stops communicating the new keys. Alternatively or as a complement it can send a deactivation order to this unit.

[0056] This key K1 can be a symmetrical or asymmetrical type. In the second case, each unit has two public and private keys and on being encrypted or decrypted, one key or the other will be used.

[0057] At the time of data transmission, these are generally encrypted by a session key generated randomly. This key is then encrypted by key K1 before it is transmitted to other units.

[0058] According to another embodiment of the invention, the units UN are pay television decoders and the security means are made up by smart cards. These decoders are also used to receive and send data for electronic messages for example. It is also possible to connect such a decoder to a computer to take advantage of the interface with a high-speed network on one hand and the security of the transactions on the other hand.

[0059] According to a particular embodiment, the right D includes a validity field. So, each unit which receives this right has a validity period. The present date is added to each data exchange (see control block above). It is reminded that this control block is encrypted.

[0060] The security means verify the compliance of the validity of the right D with the date contained in the control block. If it is out of date, the decryption of the data is not carried out. According to the method chosen, whether it is with a master unit, or with a managing centre, it is foreseen to renew the validity before its deadline, in case that the administrator of the right is willing to do it for the unit concerned. This renewal is carried out by sending a control message to the units concerned with the description of the right and the new validity. Once the validity is exceeded, the right cannot be extended anymore and a new transmission procedure of the right, as described above, is necessary. 

1. Method to create and use a virtual private network (VPN) having a plurality of units connected to a public network, each unit having security means which have at least a unique number UA, this method is characterized by the following steps: to generate a right Dn associated to the unique number UAn, by the security means of a unit Un, to transfer this right Dn to the security means of at least one unit Um, to encrypt the data sent by unit Un and the description of the Dn right by a encryption data key KS, to receive the data encrypted by the second unit Um, present these data to the security means of the unit Um, verify if the Dn right is present and if this is the case, decrypt the data by the encryption data key KS.
 2. Method according to claim 1, characterized by the fact that the right Dn is associated to an identifier of the second unit Um, and that the security means of the second unit verifies if the right Dn is destined for them.
 3. Method according to claim 1, characterized by the fact that a network index Ra is associated with the right Dn by the unit Un, and that affiliation of the another unit Um is based on the criteria of the right Dn and the index Ra.
 4. Method according to claim 2, characterized by the fact that a network index Ra is associated with the right Dn by the unit Un, and that affiliation of the another unit Um is based on the criteria of the right Dn and the index Ra.
 5. Method according to claim 1, characterized by the fact that the encryption data key KS is a session key of symmetrical type and randomly generated, this key being encrypted by a first key Kn, this encryption session key KS being transmitted to the second unit Um.
 6. Method according to claim 1, characterized by the fact that the encryption data key KS is a first key Kn common to a set of security means.
 7. Method according to claim 5, characterized by the fact that the first key Kn is generated with the right Dn and transmitted to the participating units by means of a secret service key K0 common to the units.
 8. Method according to claim 6, characterized by the fact that the first key Kn is generated with the right Dn and transmitted to the participating units by means of a secret service key K0 common to the units.
 9. Method according to claim 1, characterized by the fact that the right Dn has a validity field, and includes the following steps: to add, by the unit Un, an indication of the present date in encrypted form to the description of the right Dn, to receive this indication by the unit Um and verify by the security means of unit Um if this date is within the validity range of the right Dn.
 10. Method according to claim 2, characterized by the fact that the right Dn has a validity field, and includes the following steps: to add, by the unit Un, an indication of the present date in encrypted form to the description of the right Dn, to receive this indication by the unit Um and verify by the security means of unit Um if this date is within the validity range of the right Dn.
 11. Method according to claim 5, characterized by the fact that the right Dn has a validity field, and includes the following steps: to add, by the unit Un, an indication of the present date in encrypted form to the description of the right Dn, to receive this indication by the unit Um and verify by the security means of unit Um if this date is within the validity range of the right Dn.
 12. Method of creation and use of a virtual private network (VPN) which comprises a plurality of units connected to a managing centre (MC) through a public network, each unit having security means which has at least a unique number UA, this method is characterized by the following steps: to request the creation of a network Rn through a unit Un at the managing centre (MC), to send a right Dn and a key Kn representing an network Rn to unit Un by the managing centre (MC), to request the registration of unit Um as part of the network Rn, at the managing center (MC), to transmit the right Dn and the key Kn to unit Um, to encrypt the data sent by unit Un and the description of the right Dn by a encryption data key KS, to receive the data encrypted by the second unit Um, to present these data to the security means of unit Um, to verify if the right Dn is present and if this is the case, to decrypt the data with the encryption data key Ks.
 13. Method according to claim 12, characterized by the fact that the encryption data key KS is of a symmetrical type and is generated randomly, this key is encrypted by the first Kn key, this encrypted session key being transmitted to the second unit Um.
 14. Method according to claim 12, characterized by the fact that the request of the registration of unit Um includes the following steps: transmission of a part representing the right Dn by unit Un, presentation of this part of the right Dn at the managing centre by unit Um, verification of the managing centre (MC) that this part corresponds to the right Dn and transmission of the right Dn and the key Kn to unit Um if this is the case.
 15. Method according to claim 13, characterized by the fact that the request of the registration of unit Um includes the following steps: transmission of a part representing the right Dn by unit Un, presentation of this part of the right Dn at the managing centre by unit Um, verification of the managing centre (MC) that this part corresponds to the right Dn and transmission of the right Dn and the key Kn to unit Um if this is the case.
 16. Method according to claim 12, characterized by the fact that the request of the inscription of the unit Um includes the following steps: transmission of the identifier of unit Um to the managing centre (MC) by unit Um, transmission of the right Dn and the key Kn to unit Um by the managing centre.
 17. Method according to one of the claim 12, characterized by the fact that the managing centre (MC) sends a new key Kn′ to members of the same network Rn at a pseudo-random interval.
 18. Method according to one of the claim 13, characterized by the fact that the managing centre (MC) sends a new key Kn′ to members of the same network Rn at a pseudo-random interval.
 19. Method according to one of the claim 14, characterized by the fact that the managing centre (MC) sends a new key Kn′ to members of the same network Rn at a pseudo-random interval. 